הכלה המשך בדף עבודה הקודם, הדגשנו את ההכלה של אובייקט אחד מוכל בתוך אובייקט אחר.

Similar documents
עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא:

Practical Session No. 13 Amortized Analysis, Union/Find

A R E Y O U R E A L L Y A W A K E?

מדעי המחשב ב' בחינת מתכונת 2

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי

Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of

אנגלית ספרות בהצלחה! /המשך מעבר לדף/ נספח: כישורי חשיבה )לפרק ראשון ושני( או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי

אנגלית (MODULE E) בהצלחה!

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

מבוא לתכנות ב- JAVA תרגול 7

Patents Basics. Yehuda Binder. (For copies contact:

תרגול 11 תור עץ חיפוש בינארי

זו מערכת ישרת זוית )קרטזית( אשר בה יש לנו 2 צירים מאונכים זה לזה. באותו מישור ניתן להגדיר נקודה על ידי זוית ורדיוס וקטור

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

המחלקה למדעי המחשב, אוניברסיטת בן גוריון מבני נתונים, סמסטר אביב 2102 עבודת בית מספר - 2 מעשית

א נ ג ל י ת בהצלחה! ב. משרד החינוך בגרות לנבחנים אקסטרניים )מילון הראפס אנגלי-אנגלי-ערבי( השימוש במילון אחר טעון אישור הפיקוח על הוראת האנגלית.

מכונת מצבים סופית תרגול מס' 4. Moshe Malka & Ben lee Volk

ניפוי שגיאות )Debug( מאת ישראל אברמוביץ

אנגלית שאלון ז' ג רסה א' הוראות לנבחן בהצלחה! )4( ההנחיות בשאלון זה מנוסחות בלשון זכר ומכוונות לנבחנות ולנבחנים כאחד. (MODULE G)

בהצלחה! (MODULE C) Hoffman, Y. (2014). The Universal English-Hebrew, Hebrew-English Dictionary

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי

מותאמת לסביבת. Visual C# 2005 Express שונות. ולבצע rename לשם המבוקש

מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת (MODULE F) ספרות )מילון הראפס אנגלי-אנגלי-ערבי(

אנגלית שאלון ז' (MODULE G) ג רסה א' הוראות לנבחן )מילון אנגלי-ערבי / ערבי-אנגלי )

A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES

ãówh,é ËÓÉÔê ÌW W É Å t" Y w f É ËÓÉÑ É èw É f Ñ u ð NNM YóQ' ÌW W É Y ÉgO d óqk É w f ym Éd É u ð NNM ÌWNQMH uqo ð NNM ÌWNQMH

הוראות בעברית 40'

קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות.

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

שאלון ו' הוראות לנבחן

ANNEXURE "E1-1" FORM OF IRREVOCABLE STANDBY LETTER OF CREDIT PERFORMANCE OF CONTRACT (WHERE PRICES ARE NOT LINKED TO AN ESCALATION FORMULA)

Reflection Session: Sustainability and Me

מספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית (MODULE C) מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי قاموس إنجليزي - إنجليزي - عربي

ASP.Net MVC + Entity Framework Code First.

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5

טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון א' Corresponds with Module A (Without Access to Information from Spoken Texts) גרסה א'

סה"כ נקודות סה"כ 31 נקודות סה"כ 21 תוכן עניינים של פתרון המבחן. לולאת for )נתון אלגוריתם... מעקב, פלט

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37

ב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה!

שאלון ד' הוראות לנבחן

מותאמת לסביבת. Visual C# 2005 Express שונות. ולבצע rename לשם המבוקש

Computer Structure. Exercise #1 יש להגיש את התשובות הסופיות על גבי טופס זה.

שאלון ו' הוראות לנבחן

(MODULE E) ב ה צ ל ח ה!

ב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה!

הצעת תשובות לשאלות בחינת הבגרות אנגלית

THINKING ABOUT REST THE ORIGIN OF SHABBOS

שאלות חזרה לקראת מבחן מפמ"ר אינטרנט וסייבר

מבחן באנגלית בהצלחה הצלחה!!! שם פרטי: שם משפחה: מס' תעודת זהות: תאריך: שם מרכז מנהל מרכז השכלה: תאריך בדיקת המבחן: כל הזכויות שמורות למשרד החינוך

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון ב' Corresponds with Module B גרסה ב' הוראות לנבחן

2 יחידות לימוד הוראות לנבחן רשו ם "טיוטה" בראש כל עמוד טיוטה. רישום טיוטות כלשהן על דפים שמחוץ למחברת הבחינה עלול לגרום לפסילת הבחינה!

DNS פרק 4 ג' ברק גונן מבוסס על ספר הלימוד "רשתות מחשבים" עומר רוזנבוים 1

Hebrew Ulpan HEB Young Judaea Year Course in Israel American Jewish University College Initiative

מבחן מועד ב' אנא קיראו היטב את ההראות שלהלן:

פרק מחלקות ממשק המחלקה צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק נתון.

מושגים בסיסיים תלמידים והורים יקרים,

T H E S U N F L O W E R L I M I T S T O F O R G I V E N E S S

תרגול 8. Hash Tables

עבודה מס' 3: תכנות מונחה עצמים ורשימות

Summing up. Big Question: What next for me on my Israel Journey?

מספר ת"ז: יש לסמן את התשובה הטובה ביותר בתשובון. לא יינתן ניקוד על סימון תשובה בטופס הבחינה או במחברת הבחינה.

WHAT IS THE PSHAT OF A METAPHORICAL MITZVAH?

ראש השנה דף. 1. A) Our משנה says,... שנראה בעליל בין שלא נראה בעליל.בין Based on this,פסוק what does the word עליל mean?

דיאגרמה לתיאור Classes

Adam: Meet Haman. A Sermon Delivered by Rabbi Haskel Lookstein on Shabbat Bereishit October 25, 2008

תורשכ ירפס לכ ץבוק " ב י קלח יללכ רעש

Name Page 1 of 6. דף ט: This week s bechina starts at the two dots in the middle of

תוכנה 1 תרגיל מספר 11

CML כנס שנתי של מודעות ל- CML 4-6 לאוקטובר 2018, מלון רמדה, חדרה

פרק עצמים א. טיפוסים חדשים ב. מצב של עצם

פרק מחלקות ממשק המחלקה צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק נתון.

Expressions (ex 8) Wild World (ex 7) Cars (ex 9)

תוכן העניינים: פרק סדרות סיכום תכונות הסדרה החשבונית:... 2 תשובות סופיות:...8 סיכום תכונות הסדרה ההנדסית:...10


פרק רשימה א. ייצוג הרשימה

תרגול מספר 9: בנאים, שיטות של אובייקטים והכמסה מבוא למדעי המחשב - סמסטר א' תשע"א,תרגול מס' 9. נושאי התרגול: this

Ron Famini, Lior Bar,

א נ ג ל י ת בהצלחה! ב. משרד החינוך בגרות לנבחנים אקסטרניים מילון דו לשוני או מילון אוקספורד אנגלי-אנגלי-עברי הוראות מיוחדות:

Advisor Copy. Welcome the NCSYers to your session. Feel free to try a quick icebreaker to learn their names.

Rabbi Chaiyim Hirschensohn on International Law, Human Rights and the Temple Mount

כפתור רדיו בחירה בודדת מתוך רשימת אפשרויות

עקרונות תכנות מונחה עצמים

Name Page 1 of 5. ,דף ד: This week s bechina starts at the bottom of שיר של חול

Genetic Tests for Partners of CF patients

ASTM UL / FM / BS abesco

ראש השנה דף ח. ששה עשר בניסן ראש השנה לעומר, ששה בסיון ראש השנה לשתי that says ברייתא quotes a גמרא.1 Our. Name Page 1 of 8

פעולות קלט פלט Streams( )I\O

תוכנה 1 אביב תשע"ג תרגיל מספר 7 לכל אורך התרגיל ניתן להוסיף שירותי עזר בתנאי שאינם פוגעים בנדרש בסעיפים אחרים.

JUDAISM AND INDIVIDUALITY

םימתירוגלאו םינותנ ינבמ המירעו תינס, חמ רות רקצול הנילופ

Theories of Justice

תושירדהו הדובעה תרדגה

בוחן בתכנות בשפת C בצלחה

NATIONAL COUNCIL OF YOUNG ISRAEL. Shavuot Nation JEWISH EDITION. Compiled by Gabi Weinberg Teen Program Director

חוק זכויות הסוכן חוק חוזה סוכנות )סוכן מסחרי וספק(

פולימורפיזם. blog.csit.org.il מדעי המחשב

Transcription:

הכלה המשך בדף עבודה הקודם, הדגשנו את ההכלה של אובייקט אחד מוכל בתוך אובייקט אחר. ישנו עוד סוג של הכלה שהיא גם מאוד נפוצה וזו הכלה של אוסף אובייקטים בתוך אובייקט אחד. כדי להדגים את זה נגדיר חפיסת קלפים. מה זה חפיסת קלפים? אוסף של קלפים כדי להדגים את זה, נגדיר קלף וחפיסת קלפים השלם: חפיסה והחלקים שלה : אוסף של קלפים קלפים * חפיסה קלף כיצד נוכל לתרגם את זה לקוד: מחלקת קלף קלפים של האפשרים הסוגים הגדרת ;// CLUBS enum Suit SPADES, DIAMONDS, HEARTS, class Card צורה suit;// private Suit ערך value;// private int public Card(Suit suit, int value) this.suit = suit; this.value = value > 1 && value < 15? value : 2; public Card(int value, Suit suit) : this(suit, value) public Suit GetSuit() return this.suit; public int GetValue() return this.value; public bool Ace() return value == 14; public string ValueName() string s; switch (value) case 11: s="jack"; case 12: s= "QUEEN"; case 13: s = "KING"; case 14: s = "ACE"; default: s = value.tostring(); return string.format("0 of 1", ValueName(),suit.ToString());

ומחלקת חפיסה class Deck private Card[] cards; public int count; מלאה חפיסה היוצרת בונה שיטה // Deck() public cards = new Card[52]; count =0; for (Suit s = Suit.SPADES; s <= Suit.CLUBS; s++) for (int i = 2; i < 15; i++) cards[count++] = new Card(s, i); Shuffle(); ריקה חפיסה המכינה בונה שיטה //(x public Deck(int cards = new Card[52]; count = 0; public void Shuffle() Random rnd = new Random(); for (int i = 0; i < 30; i++) int x = rnd.next(count); int y = rnd.next(count); Card c = cards[x]; cards[x] = cards[y]; cards[y] = c; public Card Remove() return cards[--count]; public void Add(Card c) for (int i = count; i > 0; i--) cards[i] = cards[i - 1]; cards[0] = c; count++; string s=""; for (int i = 0; i < count; i++) s+= string.format("0:50 if (i%3==2) s+="\n"; return s; public bool IsEmpty() return count == 0; ",cards[i]); בתוך החפיסה יש שתי שיטות בונות: שיטה אחת היוצרת חפיסה מלאה עם 52 קלפים שיטה שניה היוצרת חפיסה ריקה מקלפים כאשר אפשר להשתמש בשיטה Add כדי להוסיף קלפים לחפיסה. עבור כל שיטה ציינתי תיאור והנחות )באילו תנאים הפעולה אכן תעבוד(

שיטה: Shuffle )ערבב את הקלפים( שבוחרת שתי קלפים רנדומלים ומחליף במקומות. את זה עושים מס' רב של פעמים ואז מקבלים חפיסה מעורבבת. חייב להיות קלפים בחפיסה שיטה: Remove מורידה את הקלף שנמצא למעלה )ובו זמנית מקטינה את מס' הקלפים בחפיסה.( ומחזירה את הקלף שהוריד הפעולה לא תעבוד אם אין קלפים בחפיסה שיטה : Add מוסיפה את הקלף לצד השני. המערכת מזיזה את כל הקלפים מקום אחד קדימה ולבסוף מכניס את הקלף למקום הראשון. הפעולה לא תעבוד אם יש חפיסה מלאה שיטה : IsEmpty() מחזירה אמת אם נשארו קלפים בחפיסה כעת נוכל להגדיר עוד מחלקה שתעזור לנו לבנות משחק קלפים "מלחמה" )המשחק תהיה פשוטה ללא מצב של "מלחמה" כלומר מצב ששני השחקנים שמים אותו מספר( class Player שם השחקן name;// private string הקלפים של השחקן deck;// private Deck public Player (string name) הוספת שם name;// this.name = יצירת חפיסה ריקה//;( Deck(0 deck = new public string GetName() return this.name; public Card ThrowCard() return deck.remove(); public void TakeCard(Card c) deck.add(c); return name + "\n" + deck.tostring(); public bool HasCards() return!deck.isempty(); יש לנו מחלקת שחקן שמוגדר עבורו שם ואילו קלפים יש לו ביד. שיטה הבונה: מקבלת שם ויוצרת חפיסה ריקה פעולה GetName() המחזירה את שם השחקן פעולה ThrowCard() אשר זורקת מהיד קלף בראש החפיסה שהשחקן מחזיק ביד. הפעולה עובדת בתנאי שיש קלפים ביד השחקן

פעולה (Card) TakeCard אשר מכניסה לסוף החפיסה קלף חדש הפעולה עובדת בתנאי שלא כל הקלפים נמצאים ביד הקלף פעולה HasCards() ומחזירה אמת אם יש לשחקן עוד קלפים שימו לב כיצד ממשים את הפעולות של השחקן. השחקן אינו כותב את הלוגיקה אלא משתמש בפעולות הקיימות כבר במחלקה שהיא מכילה : Deck כעת נכתוב מחלקה.Game המחלקה החדשה אינה משהו מוחשי כמו שחקן / קלף / חפיסה אלא משהו מופשט, מעין מנהל שמנווט בין המחלקות ומרכז את כללי המשחק תוך שימוש במחלקות המוכלות. תרשים מחלקות של המשחק Game 2 Player 2 Card * תיאור הקשרים המשחק מכיל 2 שחקנים ו- 2 קלפי השולחן Game has 2 players Deck Game has 2 Cards המשחק משתמש בחפיסה )בהתחלת המשחק( לשחקן יש חפיסת קלפים Player has a Deck of Cards לחפיסה יש עד 52 קלפים Deck has Cards

class Game 1 שחקן player1;// private Player 2 שחקן player2;// private Player השולחן על 1 שחקן של קלף //;c1 Card השולחן על 2 שחקן של קלף //;c2 Card public Game(string n1, string n2) חדשה חפיסה פתיחת Deck();// Deck deck = new player1 = new Player(n1); player2 = new Player(n2); c1 = null; c2 = null; שחקנים שני בין החפיסה קלפי כל חלוקת (!deck.isempty())// while player1.takecard(deck.remove()); if (!deck.isempty()) player2.takecard(deck.remove()); public void MakeMove() c1 = player1.throwcard(); c2 = player2.throwcard(); Console.WriteLine("Player one 0 - Player two 1", c1,c2); public void FinishMove() if (c1!= null) if (c1.getvalue() > c2.getvalue()) player1.takecard(c1); player1.takecard(c2); else player2.takecard(c1); player2.takecard(c2); c1 = null; c2 = null; public bool Won() return (!player1.hascards()!player2.hascards()); public Player Winner() if (!player1.hascards()) return player2; else if (!player2.hascards()) return player1; return null;

פעולת המחלקה Game פעולה בונה : מאתחלת חפיסה מלאה, מאתחלת שני שחקנים )עם שם שמתקבל בפעולה הראשי( ומחלקת את הקלפים בין השחקנים פעולה זריקת הקלפים MakeMove() : כל אחד מהשחקנים זורק את הקלף הראשון שלו על השולחן חייבים להיות לשני השחקנים קלפים וסיימו את המהלך הקודם פעולה סיום המהלך FinishMove() בודק מי "ניצח" )למי יש את הערך הגבוה( ומעביר את הקלפים למנצח חייבים להיות שני קלפים על השולחן פעולה בדיקת מצב ניצחון: Won() מחזירה אמת אם יש שחקן מנצח פעולה בדיקת מי המנצח Winner() פעולה המחזירה את השחקן שניצח את המשחק )כלומר לא השחקן שנותר ללא קלפים חייב להיות מצב שאחד השחקנים ניצח כעת יש לנו משחק וכל מה שאנו צריכים זה תוכנית ראשית שיאפשר לשחקנים לשחק class Program static void Main(string[] args) Game game = new Game("Ploni", "Almoni"); char c = 'm'; while (!game.won()&& c== 'm') game.makemove(); game.finishmove(); c = Console.ReadKey().KeyChar; if (game.won()) Console.WriteLine("The Winner is: 0", game.winner().getname()); Console.ReadKey(); בשיטה Main הגדרנו משחק עם שמות של שני שחקנים. המשחק ממשיך כל עוד מקישים m והמשחק לא מסתיים. לבסוף, אם המשחק מסתיים בגלל שניצח, מדפיסים את שם המנצח

תרגיל 1: שאלת בגרות תשס"ז באתר "הסקר השבועי" מתפרסם בכל שבוע סקר חדש ובו שאלה אחת. האתר שומר את 50 הסקרים האחרונים, כולל הסקר החדש. הנתונים בעבור כל סקר הם: תאריך הפרסום שלו, השא לה הנשאלת בו, ארבע תשובות אפשריות לשאלה, ובעבור כל תשובה מספר המשתתפים שבחרו בה. א. הגדר את המחלקות הנדרשות לצורך מימוש האתר "הסקר השבועי". בעבור כל אחת של המחלקות שאתה מגדיר: i. כתוב מה היא מייצגת. #C כתוב את הכותרת שלה ב-.ii.iii הגדר את התכונות שלה ב- #C. כתוב תיעוד עבור כל תכונה ב. ניהול האתר "הסקר השבועי" כולל: הוספת סקר חדש. הדפסת השאלה של הסקר החדש, והדפסת ארבע התשובות האפשריות עליה. קליטת תשובה שבחר משתתף בסקר החדש, ועדכון מספר המשתתפים שבחרו בתשובה זו. קליטת תאריך של פרסום הסקר ובעבור שאלת הסקר יש להדפיס מס' המשתתפים שבחרו בכל אחד מהתשובות מה היתה התשובה שנבחרה על ידי מס' הגדול ביותר של משתתפים הגדר את הפעולות הנדרשות לניהול ה"אתר הסקר השבועי" הנח שמוגדרים עבור כל אחד מהמאפיינים פעולות set / get מהמחלקות שהגדרת בסעיף א' בעבור כל אחד מהפעולות הגדר i באיזה מחלקה יש להגדיר אותה #C את הכותרת שלה ב- ii iii התיעוד שלה )מה הקלט, מה הפלט ובאיזה תנאי הפעולה תעבוד( ג. כתוב פעולה ב-# C המחזירה את מספר הסקרים בהם השתתפו יותר מ- 1000 משתתפים. באיזה מחלקה מהחמחלקות שהגדרת בסעיף א' יש להגדיר את הפעולה. הנח שפעולות set / get מוגדרים עבור כל המאפיינים של המחלקות שהגדרת בסעיף א. )הערה שלי- ניתן להוסיף פעולות רק יש להגדיר אותם ולממש אותם ולציין באיזה מחלקה הגדרת אותה(

תרגיל 2 לפניך מחלקת Worker class Worker שם העובד name;// private string באיזה מחלקה עובד// dept; private (1) שנה בה התחיל לעבוד // yearbeginwork; private int public Worker(string name, Dept dept) this.name = name; this.dept = dept; this.yearbeginwork = System.DateTime.Now.Year; רושם את השנה הנוכחי // public string GetName() return this.name; public ( 2 ) GetDept() return this.dept; public int GetBeginYear() return this.yearbeginwork; public int GetSenioriyInYears() return System.DateTime.Now.Year - yearbeginwork; חישוב שנות ותק // public void SetName(string name) אין לשנות את השם אם המחרוזת ריקה // if (this.name.trim().length > 0) this.name = name; public void SetDept(Dept dept) this.dept = dept; return string.format("worker : 0 in department 1 and has been working for 2 years", name, dept.getname(), GetSenioriyInYears()); ומחלקת מחלקה : המכיל שם המחלקה, הבוס )הכלה של Worker כי המנהל הוא אובייקט מסוג worker class Dept private string deptname; private int count; private Worker[] workers; private Worker boss; public Dept(string deptname, Worker boss) this.deptname = deptname; workers = new Worker[20]; count = 0; this.boss = boss; public Dept(string deptname):this (deptname,null) public string GetName() return this.deptname;

public void AddWorker(Worker w) Dept temp = w.getdept(); if (temp == null) ( 3 ) ; w.setdept( ( 4 ) ); workers[count++] = w; public void RemoveWorker(Worker w) int i; bool found = false; for (i = 0; ( 5 ) ; i++) found = workers[i] == w; if (found) for (; i < count-1; i++) ( 6 ) ; workers[--count] = null; public int FindWorker(Worker w) כתוב פעולה המחפשת עובד ומחזיר (++i את count; המספר> ;0 i הסידורי = שלוi החל (int מ- for0 כראשון. if (workers[i] == w) אם העובד אינו נמצא הפעולה תחזיר 1- ;i return return -1; public int GetNoOfWorkers() return count; string s = "Department Name : " + deptname + " and is lead by " + boss.getname(); for (int i = 0; i < count; i++) s += "\n" + workers[i].tostring(); return s; public int CountOverYearsSeniority(int years) כתוב פעולה המחזירה כמה עובדים יש במחלקה שיש להם ותק של Years שנים ויותר. עבור התרגיל יש להשלים את ששת הביטויים ולכתוב את שתי הפעולות החסרות.